package resp

// ClientUserLoginResp 登录返回信息
type ClientUserLoginResp struct {
	Token string `json:"token"`
}

// ClientUserSelfOneResp 当前用户返回信息
type ClientUserSelfOneResp struct {
	ID uint `json:"id"` // 主键

	Sn       string `json:"sn"`        // 用户编码
	Username string `json:"username"`  // 用户账号
	Nickname string `json:"nickname"`  // 用户昵称
	Avatar   string `json:"avatar"`    // 头像
	RealName string `json:"real_name"` // 真实姓名
	Mobile   string `json:"mobile"`    // 用户电话

	DeviceId string `json:"device_id"` // 设备唯一标识
	Provider string `json:"provider"`  // 手机设备厂商
	Model    string `json:"model"`     // 设备型号

	Sex      uint8 `json:"sex"`       // 用户性别: [1=男, 2=女, 0=未知]
	CoinBuy  uint  `json:"coin_buy"`  // 币-购买
	CoinGift uint  `json:"coin_gift"` // 币-赠送

	UserType uint8 `json:"user_type"` // 用户类型: [1=普通用户, 2=vip用户]

	SourceId    string `json:"source_id"`    // 渠道编码
	PackageName string `json:"package_name"` // 应用包名
	Version     string `json:"version"`      // 应用版本号

	SeriesId string `json:"series_id"` // 剧集唯一标识
	DramaId  string `json:"drama_id"`  // 短剧唯一标识

	IsDisable uint8 `json:"is_disable"` // 是否被禁用
	IsDelete  uint8 `json:"is_delete"`  // 是否删除
	IsJump    uint8 `json:"is_jump"`    // [1=短剧, 2=工具 3=小说]

	Channel       uint8  `json:"channel"`         // 注册渠道
	LastLoginIp   string `json:"last_login_ip"`   // 最后登录IP
	LastLoginTime int64  `json:"last_login_time"` // 最后登录时间
	CreateTime    int64  `json:"create_time"`     // 创建时间
	UpdateTime    int64  `json:"update_time"`     // 更新时间
}

// DramaResp 剧集列表
type DramaResp struct {
	DramaId string `json:"drama_id"` // 短剧唯一标识(ULID格式)

	Title       string `json:"title"`       // 短剧标题
	Description string `json:"description"` // 详细描述
	CoverUrl    string `json:"cover_url"`   // 封面图URL

	IsCompleted uint8 `json:"is_completed"` // 0连载中 1已完结
	Status      uint8 `json:"status"`       // 1可观看 0禁止观看

	TotalEpisodes uint `json:"total_episodes"` // 总集数
	HeatValue     uint `json:"heat_value"`     // 热度值
	Money         uint `json:"money"`          // 价格

	Tag string `json:"tag"` // 标签

	CreateTime int64 `json:"create_time"` // 创建时间
	UpdateTime int64 `json:"update_time"` // 更新时间
}

// DramaSeriesResp 剧集列表响应
type DramaSeriesResp struct {
	SeriesId string `json:"series_id"` // 剧集唯一标识
	DramaId  string `json:"drama_id"`  // 短剧唯一标识

	Title    string `json:"title"`     // 短剧标题
	VideoUrl string `json:"video_url"` //  视频URL
	IsVip    uint8  `json:"is_vip"`    // 1需付费 0免费
	Sort     int    `json:"sort"`      // 序号

	CreateTime int64 `json:"create_time"` // 创建时间
	UpdateTime int64 `json:"update_time"` // 更新时间
}

// RechargeGearResp 充值档位响应
type RechargeGearResp struct {
	ID uint `json:"id"`

	TID   uint   `json:"t_id"`  // 充值模板编号
	Type  uint8  `json:"type"`  // 充值类型 1普通充值 2会员充值
	Title string `json:"title"` // 标题

	Price     uint   `json:"price"`      // 充值金额
	Buy       uint   `json:"buy"`        // 币-购买
	Gift      uint   `json:"gift"`       // 币-赠送
	VipDays   uint   `json:"vip_days"`   // 会员天数
	Sign      uint   `json:"sign"`       // 标签，0无,1热门,2限时，3推荐
	SignName  string `json:"sign_name"`  // 标签，0无,1热门,2限时，3推荐
	IsDefault uint8  `json:"is_default"` // 是否默认选择，1是0否

	Sort   uint  `json:"sort"`   // 排序
	Status uint8 `json:"status"` // 状态1显示0隐藏

	RechargeNum uint `json:"recharge_num"` // 允许充值次数
}

// ReadRecordsResp 阅读记录响应
type ReadRecordsResp struct {
	ID uint `json:"id"`

	SeriesId string `json:"series_id"` // 剧集唯一标识
	Sort     uint   `json:"sort"`      // 剧集唯一标识
	DramaId  string `json:"drama_id"`  // 短剧唯一标识

	Money    uint   `json:"money"`     // 本集所需金币数量
	Title    string `json:"title"`     // 短剧标题
	CoverUrl string `json:"cover_url"` // 封面图URL

	LastTime  int64 `json:"last_time"`  // 上次阅读时间
	StartTime int64 `json:"start_time"` // 开始阅读时间

	CreateTime int64 `json:"create_time"` // 创建时间
	UpdateTime int64 `json:"update_time"` // 更新时间
}

// DramaLookResp 阅读记录响应
type DramaLookResp struct {
	SeriesId string `json:"series_id"` // 剧集唯一标识
	DramaId  string `json:"drama_id"`  // 短剧唯一标识
	VideoUrl string `json:"video_url"` // 视频URL

	CoinBuy   uint `json:"coin_buy"`   // 币-购买
	CoinGift  uint `json:"coin_gift"`  // 币-赠送
	NeedCoins uint `json:"need_coins"` // 本集需要币

	IsBuy int8 `json:"is_buy"` // 是否购买 1=已购买 0=未购买
}

// Orders 订单信息响应结构体
type Orders struct {
	OutNo   string `json:"out_no"` // OutNo 外部订单号，用于标识唯一订单
	OrderId string `json:"order_id"`
	Type    uint8  `json:"type"` // 订单类型，1=普通充值 2=会员充值 3=充值活动
	Buy     uint   `json:"buy"`  // Buy 购买币数

	Gift    uint `json:"gift"`     //Gift 赠送币数
	VipDays uint `json:"vip_days"` // VIP天数，表示购买的VIP时长

	Money uint `json:"money"` // 订单金额，单位为分

	IsPay   uint8 `json:"is_pay"`   // 支付状态，0=未支付 1=已支付
	PayTime int64 `json:"pay_time"` // 支付时间戳，记录订单支付的具体时间

	Status uint8 `json:"status"` // 订单状态，0=待支付 1=已支付 2=退款中 3=已退款 4=退款失败

	CreateTime int64 `json:"create_time"` // 创建时间戳，记录订单创建时间
	UpdateTime int64 `json:"update_time"` // 更新时间戳，记录订单最后更新时间
}

// OrderLists
type OrderLists struct {
	Orders

	DramaId     string `json:"drama_id"`    // 短剧唯一标识(ULID格式)
	Title       string `json:"title"`       // 短剧标题
	Description string `json:"description"` // 详细描述
	CoverUrl    string `json:"cover_url"`   // 封面图URL
}
